:- module(db_names,[
	resource_name_to_key/2,
	ditem_name_to_key/2,
	resource_key_to_name/2,
	ditem_key_to_name/2
		   ]).

:- use_module(db(database_impl)).

resource_name_to_key([],[]).
resource_name_to_key([R|Rs],[K|Ks]):-
%jcf%	(retrieve(AssetKey,asset(AssetKey,_,_,R,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_)),
%jcf%	 retrieve(K,resource(K,AssetKey,_,_,_,_)) ->
%jcf%	 true
%jcf%	;
%jcf%	    K = ''
%jcf%	),
%jcf%	resource_name_to_key(Rs,Ks).
	retrieve(AssetKey,asset(AssetKey,_,_,R,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_)),
	retrieve(K,resource(K,AssetKey,_,_,_,_)),
	resource_name_to_key(Rs,Ks).

resource_key_to_name([],[]).
resource_key_to_name([R|Rs],[K|Ks]):-
%jcf%	(retrieve(K,resource(K,AssetKey,_,_,_,_)),                                  % goals swapped for
%jcf%	 retrieve(AssetKey,asset(AssetKey,_,_,R,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_)) ->  % speedup.
%jcf%	 true
%jcf%	;
%jcf%	    R = ''
%jcf%	),
%jcf%	resource_key_to_name(Rs,Ks).
	retrieve(K,resource(K,AssetKey,_,_,_,_)),                                  % goals swapped for
	retrieve(AssetKey,asset(AssetKey,_,_,R,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_)),  % speedup.
	resource_key_to_name(Rs,Ks).

ditem_name_to_key([],[]).
ditem_name_to_key([D|Ds],[K|Ks]):-
%jcf%	(retrieve(K,ditem(K,D,_)) ->
%jcf%	 true
%jcf%	;
%jcf%	    K = ''
%jcf%	),
	retrieve(K,ditem(K,D,_)),
	ditem_name_to_key(Ds,Ks).

ditem_key_to_name(Ds,Ks):-
	ditem_name_to_key(Ds,Ks).

